﻿using System.Reflection;

namespace NLite.Reflection
{

    interface IDynamicMethodFactory
    {
        Proc CreateProcMethod(MethodInfo method);

        Func CreateFuncMethod(MethodInfo method);

        ConstructorHandler CreateConstructorMethod(ConstructorInfo constructor);

        Getter CreateGetter(MemberInfo member);

        Setter CreateSetter(MemberInfo member);
    }
}
